home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-01 / dkbuts.zip / ANIMA.INC < prev    next >
Text File  |  1991-05-16  |  2KB  |  64 lines

  1. '------------------ USER-DEFINED FUNCTIONS
  2. DEF FNLTRIM$(X$)
  3.     WHILE LEFT$(X$,1)=SPACE$(1)
  4.         X$=MID$(X$,2)
  5.     WEND
  6.     FNLTRIM$=X$
  7. END DEF
  8. DEF FNRTRIM$(X$)
  9.     WHILE RIGHT$(X$,1)=SPACE$(1)
  10.         X$=LEFT$(X$,LEN(X$)-1)
  11.     WEND
  12.     FNRTRIM$=X$
  13. END DEF
  14.  
  15. DEF FNTRIM$(X$)=FNLTRIM$(FNRTRIM$(X$))
  16.  
  17. DEF FNWORD$(X$)
  18.     ASPACE=INSTR(X$,SPACE$(1))
  19.     IF ASPACE > 0 THEN
  20.         FNWORD$=LEFT$(X$,ASPACE-1)
  21.     ELSE
  22.         FNWORD$=X$
  23.     END IF
  24. END DEF
  25.  
  26. '          ---  FORMAT A NUMERIC STRING
  27. DEF FNFMT$ (A#)
  28.     FORM$="-####.#"
  29.     STATIC SIGN, S$, P, A$, DEC, W$, F$, WF$, FF$, PAD$, ADD$
  30.     SIGN = SGN(A#)
  31.     A# = ABS(A#)
  32. '          ---  SEPARATE WHOLE AND FRACTIONAL PARTS OF NUMBER
  33.     W$ = MID$(STR$(INT(A#)), 2)
  34.     IF W$ = "" THEN W$ = "0"
  35.     S$ = STR$(1 + A#)
  36.     P = INSTR(S$, ".")
  37.     IF P = 0 THEN
  38.         F$ = ""
  39.        ELSE F$ = MID$(S$, P + 1)
  40.     END IF
  41. '          ---  SEPARATE WHOLE AND FRACTION FORMAT STRINGS
  42.     DEC = INSTR(FORM$, ".")
  43.     IF DEC = 0 THEN
  44.         WF$ = FORM$: FF$ = ""
  45.        ELSE WF$ = LEFT$(FORM$, DEC - 1)
  46.         FF$ = MID$(FORM$, DEC + 1)
  47.     END IF
  48.     ADD$ = "": PAD$ = " "
  49. '          ---  ADD SIGN CHARACTER
  50.     IF LEFT$(WF$, 1) = "-" THEN
  51.         WF$ = MID$(WF$, 2)
  52.         IF SIGN = -1 THEN
  53.             ADD$ = ADD$ + "-"
  54.            ELSE ADD$ = ADD$ + " "
  55.         END IF
  56.     END IF
  57. '          ---  HANDLE NUMERIC OVERFLOW AND UNDERFLOW
  58.     IF LEN(W$) > LEN(WF$) THEN W$ = "%" + RIGHT$(W$, LEN(WF$) - 1)
  59.     IF LEN(F$) > LEN(FF$) THEN F$ = LEFT$(F$, LEN(FF$))
  60. '          ---  FORMAT THE NUMBER STRING
  61.     IF DEC > 0 THEN W$ = W$ + "." + F$ + STRING$(LEN(FF$) - LEN(F$), "0")
  62.     FNFMT$ = ADD$ + W$
  63. END DEF
  64.